/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: 言初
 * Date: 2022-11-01
 * Time: 15:09
 */
import java.util.Scanner; // 需要导入 util 包
public class Test {
    public static int max(int a,int b)
    {
        return a>b?a:b;
    }
    public static double max(double a,double b,double c)
    {
        return a>b?(a>c?a:c):(b>c?b:c);
    }
    public static void main14(String[] args) {
        //在同一个类中定义多个方法：要求不仅可以求2个整数的最大值，还可以求3个小数的最大值？
        //求最大值方法的重载
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入要参与运算的2个整数：");
        int a1=sc.nextInt();
        int b1=sc.nextInt();
        int n=max(a1,b1);
        System.out.println("最大值是"+n);

        System.out.println("请输入要参与运算的3个小数：");
        double a2=sc.nextDouble();
        double b2=sc.nextDouble();
        double c2=sc.nextDouble();
        double m=max(a2,b2,c2);
        System.out.println("最大值是"+m);
        sc.close();
    }
    public static int add(int a,int b)
    {
        return a+b;
    }
    public static double add(double a,double b,double c)
    {
        return a+b+c;
    }
    public static void main13(String[] args) {
        //在同一个类中,分别定义求两个整数的方法 和 三个小数之和的方法。 并执行代码，求出结果
        //求和的重载
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入要参与运算的2个整数：");
        int a1=sc.nextInt();
        int b1=sc.nextInt();
        int n=add(a1,b1);
        System.out.println(n);

        System.out.println("请输入要参与运算的3个小数：");
        double a2=sc.nextDouble();
        double b2=sc.nextDouble();
        double c2=sc.nextDouble();
        double m=add(a2,b2,c2);
        System.out.println(m);
        sc.close();
    }
    public static void main12(String[] args) {
        //求斐波那契数列的第n项。(迭代实现)
        //这个数列从第3项开始，每一项都等于前两项之和。
        //前2项都是  1
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入您想知道的第几项：");
        int n=sc.nextInt();
        int m=0;
        if(n==1||n==2)
        {
            n=1;
            System.out.println(n);
        }else{
            int i=3;
            int n1=1;
            int n2=1;
            while(i<=n)
            {
                m=n1+n2;
                n1=n2;
                n2=m;
                i++;
            }
        }
        System.out.println("第"+n+"项是"+m);
        sc.close();
    }
    public static int max2(int a,int b)
    {
        return a>b?a:b;
    }
    public static int max3(int a,int b,int c)
    {
        int m2=max2(a,b);
        int m3=max2(m2,c);
        return m3;
    }
    public static void main11(String[] args) {
        //创建方法求两个数的最大值max2，随后再写一个求3个数的最大值的函数max3。
        //要求：在max3这个函数中，调用max2函数，来实现3个数的最大值计算
        //使用函数求最大值
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入需要比较的数字：");
        int a=sc.nextInt();
        int b=sc.nextInt();
        int c=sc.nextInt();

        int m2=max2(a,b);
        System.out.println(a+"和"+b+"中"+m2+"大");
        int m3=max3(a,b,c);
        System.out.println(a+"和"+b+"和"+c+"中"+m3+"大");
        sc.close();
    }
    public static void main10(String[] args) {
        //输出n*n的乘法口诀表，n由用户输入。
        Scanner sc = new Scanner(System.in);
        int n=sc.nextInt();
        for (int i = 1; i <=n ; i++) {
            for (int j = 1; j <=i ; j++) {
                System.out.print(j+"*"+i+"="+i*j+" ");
            }
            System.out.println();
        }
        sc.close();
    }
    public static void main(String[] args) {
        //编写代码模拟三次密码输入的场景。 最多能输入三次密码，
        // 密码正确，提示“登录成功”,
        // 密码错误， 可以重新输 入，最多输入三次。三次均错，则提示退出程序
        Scanner sc = new Scanner(System.in);
        int count=3;
        while(count>0)
        {
            System.out.println("请输入密码：");
            String passWord=sc.nextLine();
            if(passWord.equals("1234")) //假设原正确的密码是   1234
                //在Java里面，字符串的比较使用的是    想要比较的字符串的名字.equals("将要进行比较的字符串")
                                          //              passWord.equals("1234")
            {
                System.out.println("登录成功！");
                break;
            }else {
                System.out.println("密码错误！");
                count--;
                System.out.println("你还有"+count+"次机会");
            }
        }
        if(count==0)
        {
            System.out.println("退出程序！");
        }
        sc.close();
    }
    public static void main8(String[] args) {
        //输出一个整数的每一位，如：123的每一位是3，2，1
        Scanner sc = new Scanner(System.in);
        int a=sc.nextInt();
        while(a!=0)
        {
            int b=a%10;
            System.out.print(b+" ");
            a=a/10;
        }
        sc.close();
    }
    public static void main7(String[] args) {
//计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值 。
        double count=0;
        double a=-1;
        for (int i = 1; i <=100 ; i++) {
            if(i%2==0)
            {
                count-=1.0/i;
            }else{
                count+=1.0/i;
            }
        }
        System.out.println(count);
    }
    public static void main6(String[] args) {
        //给定两个数，求这两个数的最大公约数
        Scanner sc = new Scanner(System.in);
        int a=sc.nextInt();
        int b=sc.nextInt();
        int c=a%b;
        while(c!=0)
        {
            a=b;
            b=c;
            c=a%b;
        }
        System.out.println(b);
        sc.close();
    }
    public static void main5(String[] args) {
        //求一个整数，在内存当中存储时，二进制1的个数。
        Scanner sc = new Scanner(System.in);
        int num = sc.nextInt();
        int count=0;
        while(num!=0)
        {
            if((num&1)==1)
            {
                count++;
            }
            num=num>>>1;
        }
        System.out.println(count);
        sc.close(); // 注意, 要记得调用关闭方法
    }
    public static void main4(String[] args) {
        //给定一个数字，判定一个数字是否是素数
        Scanner sc = new Scanner(System.in);
        int num = sc.nextInt();
        int i=2;
        for (i = 2; i <=num/2; i++) {
            if(num%i==0)
            {
                break;
            }
        }
        if(i>num/2)
        {
            System.out.println(num+"是素数");
        }
        sc.close(); // 注意, 要记得调用关闭方法
    }
    public static void main3(String[] args) {
        //输出 1000 - 2000 之间所有的闰年
        int num=0;
        for (int i = 1000; i <=2000 ; i++) {
            if((i%4==0&&i%100!=0)||(i%400==0))
            {
                System.out.print(i+" ");
                num++;
            }
            if(num%20==0)
            {
                System.out.println();
            }
        }
    }
    public static void main2(String[] args) {
        //数字9出现的 次数
        int count=0;
        for(int i=1;i<=100;i++)
        {
            if(i/10==9)
            {
                count++;
            }
            if(i%10==9)
            {
                count++;
            }
        }
        System.out.println(count);
    }

    //打印1到100之间的素数
    public static void main1(String[] args) {
        //素数就是只能整除1和自己本身，并且1不是素数
        for (int j = 2; j <=100; j++) {
            int k=2;
            for (k = 2; k <=j/2; k++) {
                if(j%k==0)
                    break;
            }
            if(k>j/2)
            {
                System.out.println(j);
            }

        }
    }
}
